popover: Support shadows
authorMatthias Clasen <mclasen@redhat.com>
Mon, 1 Feb 2021 00:26:33 +0000 (19:26 -0500)
committerMatthias Clasen <mclasen@redhat.com>
Sun, 14 Feb 2021 15:11:17 +0000 (10:11 -0500)
commitb948799778541709007f848be220d814ed7a7c5a
tree7e80f8ff556310316c1970084db74679690d0995
parentaec738745a014925899611e333a35aac796ab895
popover: Support shadows

Use gdk_popup_layout_set_shadow_width to take shadows into
account when positioning popovers, and set the input region
to exclude the shadow, since we aren't doing interactive
resizing and the like.

When the popover has a beak, we make the surface size be
content size + shadow + tail, and then position the content
according to the final position inside this slightly too large
surface. The surface being too large doesn't matter, since we
set up an input region.
gtk/gtkpopover.c